package com.controller;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.dao.AppClassDao;
import com.dao.ClassroomDao;
import com.dao.StudentDao;
import com.dao.TeacherDao;
import com.mybatis.po.AppClass;
import com.mybatis.po.Student;
import com.mybatis.po.Teacher;

@Controller
public class CommitController {
	
	@Autowired
	public StudentDao studentDao ;
	@Autowired
	public TeacherDao teacherDao ;
	@Autowired
	public AppClassDao appClassDao ;
	@Autowired
	public ClassroomDao classroomDao;
	
	// 显示相关信息接口
	@RequestMapping("/less")
	@ResponseBody
	public Map<String, String> seeLess(HttpServletRequest request) {
		// 获取传进来的值
		String openid = request.getParameter("openid");
		String state = request.getParameter("state");
		String ifseeAll = request.getParameter("ifseeAll");
		
 		Map<String,String> map = new HashMap<String, String>();
 		// 查找是否有这个用户
		List<Student> listStu = studentDao.selectStudentbyOpenid(openid);
		List<Teacher> listTea = teacherDao.selectTeacherbyOpenid(openid);
		// 是学生
		if(listStu.size()!=0) {
			// 查找学生的预约记录
			List<AppClass> listAppClass = appClassDao.selectAppClassbyAccountAndState(listStu.get(0).getSno(), state);
			// 该学生有预约记录
			if(listAppClass.size()!=0 ) {
				// 如果ifseeAll为1，则查看详细信息
				if(ifseeAll.equals("1")) {
					map.put("sno", listAppClass.get(0).getSno());// 学生学号
					map.put("sname", listStu.get(0).getSnoName());// 学生姓名
					map.put("tno", listAppClass.get(0).getTno());// 指导老师工号
					map.put("tname", teacherDao.selectTeacherbyAccount(listAppClass.get(0).getTno()).get(0).getTname());// 指导老师名字
					map.put("cname", classroomDao.selectClassroombyCcode(listAppClass.get(0).getCcode()).get(0).getCname());// 教室名字
					map.put("time",listAppClass.get(0).getAppDate()+" "+listAppClass.get(0).getTimeSlot());// 预约时间
					map.put("purpose",listAppClass.get(0).getPurpose());// 预约原因
					map.put("udepartment", listAppClass.get(0).getUdepartment());// 使用组织
					map.put("useEquipment", listAppClass.get(0).getUseEquipment());// 是否使用设备
					map.put("sphoneNum", listAppClass.get(0).getSphoneNum());// 学生电话
					map.put("deptPhone", listAppClass.get(0).getDepPhone());// 使用组织电话
					map.put("state", listAppClass.get(0).getState());// 状态
				}
				// 否则只看初略信息
				else {
					map.put("name", listStu.get(0).getSnoName());// 预约人姓名
					map.put("deptName",listAppClass.get(0).getUdepartment());// 预约人单位
					map.put("purpose",listAppClass.get(0).getPurpose());// 预约是由
					map.put("state",state);// 状态
					map.put("time",listAppClass.get(0).getAppDate()+" "+listAppClass.get(0).getTimeSlot());// 预约时间
				}
			}else {
				map.put("error", "你没有预约记录，请预约！");//预约人姓名
			}
		}
		// 是老师
		else if(listTea.size() != 0) {
//			List<AppClass> listAppClass = appClassDao.selectAppClassbyAccountAndState(listTea.get(0).getTno(), state);
//			if(listAppClass.size()!=0 ) {
//				map.put("name", listStu.get(0).getSnoName());//预约人姓名
//				map.put("deptName",listAppClass.get(0).getUdepartment());//预约人单位
//				map.put("purpose",listAppClass.get(0).getPurpose());//预约是由
//				map.put("state",state);//预约状态
//				map.put("time",listAppClass.get(0).getAppDate());//预约时间
//			}else {
//				map.put("name", "");//预约人姓名
//				map.put("deptName","");//预约人单位
//				map.put("purpose","");//预约是由
//				map.put("state","");//预约状态
//				map.put("time","");//预约时间
//			}
		}else {
			map.put("error","no find");
		}
		return map;
	}
}
